package com.zsrt.designmodel.ch04.demo03;


/**
 * 
 * 工厂模式三部曲 之三： 抽象工厂模式
 * 模拟生产枪械的兵工厂
 *
 *	缺点：如果在BingFactory要生产枪和枪的子弹  如何保证可以正确地配对?  必须用抽象工厂
 *
 *  考虑1个问题  兵工厂既要生产枪 又要生产对应枪的子弹 比如  AK47的子弹  还有 C56的子弹  
 *  
 *  这时候使用抽象工厂模式  保证生产一系列的产品 并且产品是配套的。
 *
 */
public interface BingFactory{

	/**
	 * 把BingFactory定义成接口或者抽象类 并把创建对象延迟到子类中去  工厂方法模式
	 * @param name
	 * @return
	 */
	Gun createGun();
	
	ZD  createZD();

}
